#ifndef	DNF_H 
#define DNF_H
#include <vector>
#include "conjunction.h"
#include "valuation.h"

namespace cdnf{

class DNF{
public:	
	bool getValue(bool* valuation);
	bool getValue(Valuation& valuation);
	bool getValue(std::vector<int> values);
	std::vector<Conjunction>& getConjunctions();	
	void addConjunction(Conjunction& c);
	Conjunction& getConjunction(int index);
	void setConjunction(int index, Conjunction& c);	
	bool isDegenerated();
	void setDegeneratedValue(bool degeneratedValue);
	bool getDegeneratedValue();
	int size();
private:
	std::vector<Conjunction> conjunctions;
	bool degeneratedValue;
};

}
#endif
